The present invention relates to enterprise systems, and more particularly to techniques for identifying and searching searchable data associated with applications in an enterprise system.
Many businesses and other organizations use software applications and/or suites of such applications to organize their business affairs, track business performance, manage employee data and perform similar functions. These enterprise applications are often quite complex, relying on numerous database tables to store and manage data for virtually every aspect of an organization's business. Exemplary enterprise applications can include supply chain management (“SCM”) applications that manage raw materials, work-in-process and/or finished products, and coordinate with suppliers; customer relations management (“CRM”) applications that are used to track, store and/or manage customer information; financial applications that track and/or analyze the financial performance of the organization; human resources applications that provide management of the human resources functions of the organization, and other applications. In some cases, these applications are standalone applications; in other cases, a single business application or suite of applications might provide some or all such functionality. Specific, non-limiting examples of enterprise applications include JD Edwards Enterpriseone, PeopleSoft Enterprise applications (including, for example, PeopleSoft Enterprise Student Administration), and the Oracle eBusiness Suite, all available from Oracle Corporation.
Enterprise applications typically store and process business data in one or more data stores. In one configuration, the data is stored in one or more tables of a database managed by a relational database management system (“RDBMS”) and maintained by the business application. Each enterprise application may use a separate data store, which may be an independent database or portion of a database. Thus, for example, where a business system includes a CRM application and an enterprise resource planning (“ERP”) application, the CRM application may use a data store separate from the ERP application. Each application typically maintains and manages the data stored in its data store.
A relational database typically is designed to reduce or minimize redundancy in stored data by structuring the database tables to store data in a normalized form. This can result in a single business object being stored across multiple database tables. Structured queries may be used to extract data from the relevant tables for processing and/or presentation to an end user of the business system. However, data stored in relational databases typically may not be stored or directly accessible in a format conducive to text searching, presentation to end users, or other context-related manipulation.